<?php
/* 
 * ********* CVS HEADER ********* 
 * 
 * $RCSfile: admenvboxdroit.php,v $ 
 * $Date: 2007/07/30 21:16:45 $ 
 * $Revision: 1.3 $ 
 * 
 * ********* CVS HEADER ********* 
 */
if (!isset($envid)) {
	rportalerreur("Aucun environnement en param&egrave;tre !","?op=admenvliste");
}
require_once(get_path_module("environnement.environnement"));
require_once(get_path("param")."environnement.php");
$query="SELECT * FROM environnement WHERE id='$envid'";
$result=rportalrequete($query) or rportalerreur($query,"?op=admenvmod&argid=$envid");
if($environnement=rportalligne($result)){
	$L_base_env = get_env_path();
    $env=new environnement;
    $env=restaure_environnement($environnement[environnement]);
    if($action=='process'){
        $i=0;
        $j=0;
        $groupe=array();
        $droit="::";
        $varname = "argid".$j;
        while(isset($$varname)){
        	if($$varname!=0){$groupe[$i]="('$boxid','".$$varname."')";$droit.=":".$$varname.":";$i++;}
        	$j++;
        	$varname = "argid".$j;
        }
        
        $query="DELETE FROM rportal_boxdroit WHERE id_box='$boxid'";
        @rportalrequete($query) or rportalerreur($query,"?op=admenvmod&argid=$envid");
        if($i>0){
            $query="INSERT INTO rportal_boxdroit (id_box,id_groupe) VALUES ".implode($groupe," , ");
            @rportalrequete($query) or rportalerreur($query,"?op=admenvmod&argid=$envid");
        }
        //}
        $box=$env->getbox($boxid);
        if($utiliser==1){
            $box->usedroit(1);
        } else {
            $box->usedroit(-1);
        }
        $box->setdroit($droit);
        $env->setbox($boxid,$box);
        $modif = $environnement['modification'];
		$modif = "Modification des droits du box ".$box->getnom().".\n" . $modif;
        $query="UPDATE environnement SET environnement='".$env->serialize()."',lastmod=NOW(),modification='".addslashes($modif)."' WHERE id='$envid'";
        @rportalrequete($query) or die ("ERREUR: $query<br />");	
        header("Location: ?op=admenvmod&argid=$envid");
        exit;
    }
    $box = $env->getbox($argid);
    require_once(get_path("module")."TPLN/TPLN.php");
    $TPLN = new TPLN;
    $TPLN->Open($op_basepath.get_path("tpl")."admenvboxdroit.html");
	$TPLN->IncludeFile("header",$L_base_env.$session['environnement']."/header.php");
	$TPLN->IncludeFile("footer",$L_base_env.$session['environnement']."/footer.php");
	
	require_once(get_path_module("admin")); 
	$pc = new panneau_controle(); 
	$pc->calculRubriqueParFonction('admenvliste'); 
	$TPLN->Parse("panneau_controle",$pc->retourneEntete());
	
    if($box->usedroit()==1){
        $TPLN->Parse("use_check",'checked');   
    } else {
        $TPLN->Parse("use_check",'');
    }
    $TPLN->Parse("box_nom",$box->getnom());
    $TPLN->Parse("boxid",$argid);
    $TPLN->Parse("envid",$envid);
    $query="SELECT groupe.*,rportal_boxdroit.id_box FROM groupe LEFT OUTER JOIN rportal_boxdroit ON rportal_boxdroit.id_groupe=groupe.id AND rportal_boxdroit.id_box='$argid' WHERE groupe.id_environnement='$envid'";
    $result=rportalrequete($query) or rportalerreur($query,"?op=admenvmod&argid=$envid");
    $i=0;
    $class="liste_impaire";
    if(rportalnbresult($result)==0){
        $TPLN->EraseBloc("liste");   
    }
    while($groupe=rportalligne($result)){
        $TPLN->Parse("liste.classe",$class);
        $TPLN->Parse("liste.groupe_nom",$groupe[nom]);
        $TPLN->Parse("liste.groupe_id",$groupe[id]);
        if($groupe[id_box]==$argid){
            $TPLN->Parse("liste.oui","checked");
            $TPLN->Parse("liste.non",'');
        } else {
            $TPLN->Parse("liste.non","checked");
            $TPLN->Parse("liste.oui",'');
        }
        $TPLN->Parse("liste.compteur",$i);
        $TPLN->Loop("liste");
        $i++;
        if($class!="liste_impaire")
	    {
		    $class="liste_impaire";
        }else{
	        $class="liste_paire";
        }
    }
    $TPLN->Write();
}else{
rportalerreur("L'environnement [id=$envid] n'existe pas.","?op=admenvliste");
}
?>
